package twoD.IsoPfem.Control;

public interface IConstraintCondition {

	double getInitialLambda();

	void setInitialLambda(double lambda0);

	double getS();
	
	double[] getU(double[] uGlobal);

	double f(double[] u, double[] uold, double lambda, double lambda_old);

	double[] dfdu(double[] u, double[] uold, double lambda, double lambda_old);

	double dfdlambda(double[] u, double[] uold, double lambda, double lambda_old);

	void increment();

	void reduceStepSize();

	void storeStepSize();

	void restoreStepSize();
}
